NW 50 - OT ÉÇÉfÉÄÉXÉNÉäÉvÉgÉGÉìÉWÉìÇÃégÇ¢ï˚

(çXêVì˙: 97 îN 7 åé 11 ì˙)

Q: åªç›ÅAÉÇÉfÉÄÇâÓǵǃÉVÉäÉAÉãê⁄ë±ÇämóßÇ∑ÇÈã@î\ÇïKóvÇΔÇ∑ÇÈÉ\ÉtÉgÉEÉFÉAÇäJî≠ǵǃǢNjÇ∑ÅBÇΩÇæÇµÅAÉÇÉfÉÄÇê›íËÇ∑ÇÈÇΩÇflÇ…ÉÜÅ[ÉUÇ…ï°éGÇ» AT ÉRÉ}ÉìÉhÇÃì¸óÕÇóvãÅǵÇΩÇËÅACCL ÉpÅ[ÉTÇèëÇ©ÇπÇΩÇËÇ∑ÇÈÇÃÇ≈ÇÕÇ»Ç≠ÅAARA Ç‚ Open Transport/PPP Ç≈égópÇ≥ÇÍÇÈ CCL ÉXÉNÉäÉvÉgÇíÒãüǵÇÊǧÇΔçlǶǃǢNjÇ∑ÅB

DZÇÃèÍçáÅAÉVÉXÉeÉÄÉåÉxÉãÇ≈íPàÍÇÃÉÇÉfÉÄÉAÉNÉZÉXÇ®ÇÊÇ—êßå‰ÇÃï˚ñ@ǙdžÇÍÇŒÅAîÒèÌÇ…ï÷óòÇ≈Ç∑ÅBǪǧÇ∑ÇÍÇŒÅAÉÇÉfÉÄÉxÉìÉ_Å[ÇÕÅA1 ǬÇà CCL ÉGÉìÉWÉìÇæÇØÇÉTÉ|Å[ÉgǵÅAÉNÉâÉCÉAÉìÉgÉ\ÉtÉgÉEÉFÉAÇÃÉfÉxÉçÉbÉpÇÕÅAǪÇÍǺÇÍÇÃÉÇÉfÉÄÇ…å≈óLÇà API Ç≈ÇÕÇ»Ç≠ÅAíPàÍÇà API ÇégópÇ∑ÇÈDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅBêVǵǢÉÇÉfÉÄÇ™ÉäÉäÅ[ÉXÇ≥ÇÍǃLJÅAÉNÉâÉCÉAÉìÉgÉ\ÉtÉgÉEÉFÉAÇÃêVǵǢÉäÉäÅ[ÉXÇÕïKóvÇ»Ç≠ÅAä˘ë∂ÇÃÉÇÉfÉÄÉXÉNÉäÉvÉgÇ…ÇÊǡǃÉTÉ|Å[ÉgÇ∑ÇÈDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅBDZÇÍÇ™é¿åªÇ∑ÇÍÇŒÅAÉNÉâÉCÉAÉìÉgÉfÉxÉçÉbÉpÇΔÉÇÉfÉÄÉxÉìÉ_Å[ÇÃÉTÉ|Å[ÉgÉRÉXÉgÇÕëÂïùÇ…çÌÇ≥ÇÍÇÈÇÕÇ∏Ç≈Ç∑ÅBÇ‹ÇΩÅAã§í ÇÃÉCÉìÉ^ÉtÉFÅ[ÉXÇégópÇ∑ÇÈDZÇΔÇ≈ÅAÉNÉâÉCÉAÉìÉgÉ\ÉtÉgÉEÉFÉAÇÃÉfÉxÉçÉbÉpÇÕÉRÉìÉtÉäÉNÉgÇîÇØÇÈDZÇΔLJÇ≈Ç´Ç‹Ç∑ÅB

DZÇÃñ⁄ìIÇ≈égópÇ≈Ç´ÇÈâΩÇÁÇ©ÇÃÉ}ÉjÉÖÉAÉãÇ‹ÇΩÇÕ SDK ÇÕópà”Ç≥ÇÍǃǢÇÈÇÃÇ≈ǵÇÂǧǩÅB

A: åªç›ÇÃÇΔDZÇÎÅAOpen Transport Modem/Script ÉGÉìÉWÉìÇ÷ÇÃÉTÅ[ÉhÉpÅ[ÉeÉBÇÃÉAÉNÉZÉXÇ…ëŒÇ∑ÇÈåˆéÆÇà SDK Ç‹ÇΩÇÕÉTÉ|Å[ÉgÇÕópà”Ç≥ÇÍǃǢNjÇπÇÒÅBÇΩÇæÇµÅAOpen Transport API ÇégǡǃDZÇÃã@î\Ç…ÉAÉNÉZÉXÇ∑ÇÈDZÇΔÇÕâ¬î\Ç≈Ç∑ (ǵǩLJîÒèÌÇ…óeà’Ç≈Ç∑)ÅB

íçà”: DZÇà Q&A Ç≈è–âÓÇ≥ÇÍǃǢÇÈèÓïÒÇÕǪÇÍǺÇÍÇÃÉfÉxÉçÉbÉpÇÃê”îCDžǮǢǃóòópǵǃÇ≠ÇæÇ≥Ç¢ÅBDZÇÃèÓïÒÇÕ DTS Ç…ÇÊǡǃÉTÉ|Å[ÉgÇ≥ÇÍǃǢNjÇπÇÒÅBÇ‹ÇΩÅAè´óà (ämé¿Ç…) ïœçXÇ≥ÇÍÇÈâ¬î\ê´Ç™Ç†ÇËÇ‹Ç∑ÅB

Open Transport Modem/Script ÉGÉìÉWÉìÇÕÅA"OpenTpt Modem" ÉâÉCÉuÉâÉäÅAÅgÉÇÉfÉÄÅhÉRÉìÉgÉçÅ[ÉãÉpÉlÉãÅAÇ®ÇÊÇ— "Modem Scripts" ÇΔǢǧñºëOÇÃÉfÉBÉåÉNÉgÉäǻǫÅAÇ¢Ç≠ǬǩÇÃçÄñ⁄Ç©ÇÁç\ê¨Ç≥ÇÍǃǢNjÇ∑ÅBDZÇÍÇÁÇÃÉtÉ@ÉCÉãÇÕÅAOpen Transport/PPP Ç®ÇÊÇ— ARA 3.0 ÇÃàÍïîÇΔǵǃÉCÉìÉXÉgÅ[ÉãÇ≥ÇÍÇ‹Ç∑ÅB

"OpenTpt Modem" ÉÇÉWÉÖÅ[ÉãÇ™ÉCÉìÉXÉgÅ[ÉãÇ≥ÇÍǃÉVÉXÉeÉÄÇ…ëgÇ›çûÇ‹ÇÍÇΩå„ÇÕÅAOT Serial ÉGÉìÉhÉ|ÉCÉìÉgÇΔìØÇ∂ï˚ñ@Ç≈ÅAModem/Script ÉGÉìÉWÉìÇ÷Çà OT ÉGÉìÉhÉ|ÉCÉìÉgÇä»íPÇ…ÉIÅ[ÉvÉìÇ∑ÇÈDZÇΔÇ™Ç≈Ç´Ç‹Ç∑ÅBÇΩÇæÇµÅAconfig ÉtÉBÅ[ÉãÉhÇ≈ "Script" ÇìnÇ∑ì_ÇæÇØÇ™àŸÇ»ÇËÇ‹Ç∑ÅB

Err = OTAsyncOpenEndpoint( OTCreateConfiguration("Script"), .....)

DZÇÃÉGÉìÉhÉ|ÉCÉìÉgÇÕÅAOT_CONNECT Ç…ÇÊÇËê⁄ë±ÇÃèâä˙âªÇ‚âèúÇ™çsÇÌÇÍÇÈǻǫÅAÉVÉäÉAÉãÉGÉìÉhÉ|ÉCÉìÉgÇΔìØÇ∂ÇÊǧDžìÆçÏǵNjÇ∑ÅBé¿ç€ÅAaddr ÉtÉBÅ[ÉãÉhÇà Connect Ç©ÇÁìdòbî‘çÜÇìnÇ∑DZÇΔÇ™Ç≈Ç´ÇÈÇÕÇ∏Ç≈Ç∑ÅBégópâ¬î\Ç» OpenTransportModem.h ÉtÉ@ÉCÉãÇ™ë∂ç›ÇµÇ»Ç¢ÇΩÇflÅAéüÇÃèÓïÒÇÃÇ¢Ç≠ǬǩǙïKóvÇ…Ç»ÇËÇ‹Ç∑ÅB

spacer image
// Opentransport Modem/Script ÉGÉìÉWÉìÇ…ëŒÇ∑ÇÈÉRÉìÉtÉBÉMÉÖÉåÅ[ÉVÉáÉìñº
        #define kScriptName "Script"

// Modem/Script ÉGÉìÉWÉìÇ™ÉCÉìÉXÉgÅ[ÉãÇ≥ÇÍǃǢÇÈǩǫǧǩämîFÇ∑ÇÈÇ…ÇÕÅA
// Open Transport ÉxÅ[ÉXÇà Modem ÉâÉCÉuÉâÉäÇ…ëŒâûÇ∑ÇÈìKêÿÇ» Gestalt ÉZÉåÉNÉ^ÇÉ`ÉFÉbÉNÇ∑ÇÈ
#define gestaltOpenTptModem 'otmo' #define gestaltOpenTptModemPresent 0 #define gestaltOpenTptModemVersion 'otmv' #define kGestaltOpenTptModemVersion 0x01000080 // íçà”: "stage" ÉoÉCÉgÇ…ëŒÇ∑ÇÈóLå¯Ç»ílÇÕéüÇÃÇÊǧDžǻÇÈ // development = 0x20, alpha = 0x40, beta = 0x60, final & release = 0x80 // éüÇÕÅAModem/Script Configurator ÇÃÉGÉâÅ[ÉRÅ[ÉhÅBǪÇÃëºÇÃÉRÅ[ÉhÇ™ Open Transport Ç‚ // ÉIÉyÉåÅ[ÉeÉBÉìÉOÉVÉXÉeÉÄÉãÅ[É`ÉìÇ©ÇÁï‘Ç≥ÇÍÇÈDZÇΔLJdžÇÈ #define kModemNoError 0 #define kModemOutOfMemory -14000 #define kModemPreferencesMissing -14001 #define kModemScriptMissing -14002 ÅgÉÇÉfÉÄÅhÉRÉìÉgÉçÅ[ÉãÉpÉlÉãåoóRÇ≈ÉÇÉfÉÄÇÃÉ^ÉCÉvÇéËìÆÇ≈ê›íËÇ∑ÇÈÇ©ÅAModem Configuration èâä˙ê›íËÉtÉ@ÉCÉãÇé©ï™Ç≈ÉnÉbÉNÇ∑ÇÈïKóvǙdžÇÈÇΩÇflÅAÉÇÉfÉÄèâä˙ê›íËÉtÉ@ÉCÉãÇÃì‡óeÇ ímǡǃǮÇ≠DZÇΔÇÕå„ÅXñÇ…óßÇøÇ‹Ç∑ÅB // Modem Configuration èâä˙ê›íËÉäÉ\Å[ÉXÉtÉ@ÉCÉãÇÃíËêî kModemConfigFileCreator = 'modm', kModemConfigFileType = 'mdpf', kModemConfigVersion = 0x00010000, kModemConfigExportType = 'mdex', kModemScriptType = 'mlts', // ARA 1.0/2.0 ÇΔìØÇ∂ kModemScriptCreator = 'slnk', // ARA 1.0/2.0 ÇΔìØÇ∂ // ÉRÉìÉtÉBÉMÉÖÉåÅ[ÉVÉáÉìÉäÉ\Å[ÉXÇÃíËêî kModemConfigTypeModem = 'ccl ', // Modem config ÉäÉ\Å[ÉXÇÃÉ^ÉCÉv kModemSelectedConfigID = 1, // ÉäÉ\Å[ÉXÇà ID kModemSelectedConfigType = 'ccfg', // åªç›ëIëÇ≥ÇÍǃǢÇÈ CCL Çà ID kModemConfigNameType = 'cnam', // config name ÉäÉ\Å[ÉXÇÃÉ^ÉCÉv kModemConfigTypeLocks = 'lkmd', // lock ÉäÉ\Å[ÉXÇÃÉ^ÉCÉv kModemConfigFirstID = 128 // configuration ÉäÉ\Å[ÉXÇ…ëŒÇ∑ÇÈç≈â∫à Çà ID // ÉXÉNÉäÉvÉgÉtÉ@ÉCÉãñºÇÃç≈ëÂÉTÉCÉYÅBFSSpec Çà "name" ÉtÉBÅ[ÉãÉhÇΔìØÇ∂ kMaxScriptNameSize = 64 // äeçëã§í ÇÃÉtÉ@ÉCÉãñºÇÉäÉ\Å[ÉXÉtÉHÅ[ÉNÇ©ÇÁì«Ç›çûÇflǻǢèÍçáÇ…ÇæÇØégópÇ∑ÇÈÉtÉ@ÉCÉãñº #define kDefaultModemPrefsFileName "\pModem Preferences" // É_ÉCÉÑÉãÉgÅ[ÉìÉÇÅ[Éh enum { kDialToneNormal = 0, kDialToneIgnore = 1, kDialToneManual = 2 }; // Modem configuration èÓïÒÇ…ëŒâûÇ∑ÇÈ Modem Configuration // Resource ÇÃÉtÉHÅ[É}ÉbÉg typedef struct { UInt32 version; Boolean useModemScript; FSSpec modemScript; Boolean modemSpeakerOn; Boolean modemPulseDial; UInt32 modemDialToneMode; SInt8 lowerLayerName[kMaxProviderNameSize]; } RAConfigModem;
 ----------------------------------------------------------------------------
-- Vinnie Moscaritolo
devsupport@apple.com

[ Technical Q&A's : Communications & Collaboration : Networking : NW50 ]

spacer image